package collection;

import java.util.ArrayList;
import java.util.Collection;

/**
 * 演示contains()和remove()方法
 */
public class CollectionDemo2 {
    public static void main(String[] args) {
        //Collection c = new HashSet();
        Collection c = new ArrayList();
        c.add(new Point(1, 2));
        c.add(new Point(3, 4));
        c.add(new Point(5, 6));
        c.add(new Point(7, 8));
        c.add(new Point(9, 0));
        boolean b = c.add(new Point(1, 2));
        System.out.println(b); //对于HashSet集而言为false，因为是否重复取决于元素的equals()结果
                               //对于ArrayList集而言为true，因为ArrayList是可重复集
        //[元素1.toString(), 元素2.toString(), 元素3.toString(), ......]
        System.out.println(c); //[(1,2), (3,4), (5,6), (7,8), (9,0)]

        /*
           boolean contains(object o);
           判断当前集合是否包含给定元素o, 若包含则返回true, 否则返回false
           判断依据是给定元素与当前集合元素是否存在equals()为true的情况
         */
        Point p = new Point(1, 2);
        boolean contains = c.contains(p);
        System.out.println("是否包含:" + contains);

        /*
           boolean remove(Object o):-------------一般都不接收boolean结果
           从当前集合中删除与给定元素o的equals()比较为true的元素, 删除成功为true, 否则为false
           若存在重复元素则只删除第1次匹配的元素
         */
        boolean remove = c.remove(p);
        System.out.println("是否删除" + remove);
        System.out.println(c); //[(3,4}, (5,6), (7,8), (9,0), (1,2)]
    }
}
